﻿#pragma once
/// Copyright 2012, Alex Averian, Yonan Research
/// Released under BSD Licence



#define _CRT_SECURE_NO_WARNINGS

#pragma warning ( disable : 4996 )  // disable bogus deprecation warning


#include <time.h>  //for srand
#include <tchar.h>  //for srand


#if defined (NDEBUG)
#pragma comment(linker, "/NODEFAULTLIB:MSVCRT.lib")
#pragma comment(linker, "/NODEFAULTLIB:msvcrt90.lib")
#pragma comment(linker, "/NODEFAULTLIB:msvcrt100.lib")
#pragma comment(linker, "/NODEFAULTLIB:msvcrt110.lib")
#pragma comment(linker, "/NODEFAULTLIB:msvcrt120.lib")
#pragma comment(linker, "/NODEFAULTLIB:LIBCMT.lib")
#pragma comment(linker, "/NODEFAULTLIB:LIBCMTD.lib")
#if defined (_WIN64)
//#pragma comment(lib,"libs\\ntdll64.lib")
#pragma comment(lib,"..\\micro\\sdk\\qlibs\\msvcrt64.lib")
#else
//#pragma comment(lib,"libs\\ntdll32.lib")
#pragma comment(lib,"..\\micro\\sdk\\qlibs\\msvcrt32.lib")
#endif

#endif




#if !defined(_LIB)
#if defined (_WIN64)
#if defined (_DEBUG)
#pragma comment(lib,"../x64/debug/micro.lib")
#else
#pragma comment(lib,"../x64/release/micro.lib")
#endif
#else
#if defined (_DEBUG)
#pragma comment(lib,"../debug/micro.lib")
#else
#pragma comment(lib,"../release/micro.lib")
#endif

#endif
#endif


// Set up common controls v6 the easy way.  By doing this, there is no need
// to call InitCommonControlsEx().
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")







// jumplist
#include <shobjidl.h>
#include <propvarutil.h>
#include <propkey.h>



//qcom
#include <unknwn.h>


//qshell
#include <shellapi.h>
#include <shlobj.h>
#include <Psapi.h>
#pragma comment(lib, "Psapi.lib")


// for StrFormatByteSize
#include <shlwapi.h>
#pragma comment(lib, "shlwapi.lib")


//#include <shobjidl.h>
//#pragma comment(lib, "shell32.lib")




//drad'n drop
//#include <shlobj.h>




//qhyperlink
//#include <shellapi.h>


//imagelist
#include <commctrl.h>
#pragma comment(lib,"comctl32.lib")



//qbrowswer
#include <exdisp.h>		// Defines of stuff like IWebBrowser2. This is an include file with Visual C 6 and above
#include <exdispid.h>
//#include <ocidl.h>





#include "qtypes.h"
#include "qdebug.h"




#include "qstring.h"
#include "qerror.h"


#include "qobject.h"
#include "qsingleton.h"
#include "qglobalmemory.h"
#include "qrect.h"
#include "qstring.h"
#include "qtime.h"




#include "qarray.h"
#include "qstack.h"
#include "qtree.h"
#include "qmap.h"
//#include "qxmlparser.h"

using namespace micro::utils;




#include "qevent.h"
#include "qthread.h"


#include "qshell.h"
#include "qdriveinfo.h"
using namespace micro::core;
using namespace micro::shell;






#include "qfile.h"
#include "qmemfile.h"
#include "qfilemap.h"
#include "qarchive.h"
using namespace micro::files;


#include "qclipboard.h"
#include "qresource.h"
using namespace micro::app;


#include "qgraphics.h"



//qtheme
#include "qtheme.h"  //SetWindowTheme, needs debug
using namespace micro::gui;


#include "qaccelerator.h"
#include "qcursor.h"
#include "qwaitcursor.h"
#include "qwindow.h"

//dupa qwindow
#include "qwindowpos.h"
#include "qcaret.h"

#include "qtooltip.h"


#include "qbutton.h"
#include "qedit.h"
#include "qrichedit.h"
#include "qmenu.h"





#include "qhyperlink.h"
#include "qlabel.h"

#include "qtreectrl.h"
#include "qcombobox.h"
#include "qlist.h"
#include "qlistcontrol.h"

#include "qdatetimeselector.h"
#include "qmonthcalendar.h"

//////////////////////////////////////////////////////////////////////////
#include "qsystray.h"

#include "qsplitter.h"
#include "qpanel.h"
#include "qtabcontainer.h"
#include "qxtabcontainer.h"

#include "qbrowser.h"
#include "qmainframe.h"

using namespace micro::gui;




#include "qbrowser.h"
using namespace micro::browser;



#include "qdialog.h"
#include "qtaskdialog.h"
using namespace micro::dialog;




#include "qdragdrop.h"
using namespace micro::dragdrop;




#include "qjumplist.h"
#include "qregistry.h"
#include "qapp.h"
using namespace micro::app;




#include"qshell.h"
using namespace micro::core;




///network
#include "net/qftplite.h"
#include "net/qnetwork.h"
using namespace micro::net;

#include "media/qmedia.h"
using namespace micro::media;


#include "directx/qdirect2d.h"
#include "directx/qdirectwrite.h"
#include "directx/qwic.h"
using namespace micro::directx;


 
 




///compression
#include "qzip/qtarfile.h"				/// tar
#include "qzip/qzipfile.h"				/// zip and gzip
#include "qzip/qbzipfile.h"				/// bzip

using namespace micro::qzip;





#if defined(_LIB)
#define  QSQL
#endif

#if defined(QSQL)
#include "qsql/qsql.h"
using namespace micro::qsql;
#endif



 